package interpreteur;

import interpreteur.action.Foncteur;
import interpreteur.echecs.Position;
import interpreteur.echecs.Coups;
import interpreteur.echecs.Echiquier;
import interpreteur.echecs.Pieces.Piece;
import interpreteur.echecs.Pieces.Piece.Couleur;
import java.util.ArrayList;
import java.util.List;

public class Etat implements Echiquier {

    public static Foncteur estFouTourDame,  estPion,  estRoiOuCavalier;
    public static Foncteur NewCoups,  CaseSuivante,  NewArrayListCoups,  DirSuivante,  DistSuivante,  InitDist;
    public static Foncteur InitIndex,  InitDir,  AjoutCoupsListe,  existeDirSuiv,  estPionDep,  estFinDirPion;
    public static Foncteur ExamineEchecs,  PieceCouleurQuiJoue,  ArrVide,  PieceCouleurEtudiee,  existeCaseSuiv;
    public static Foncteur estCaseArrOccup,  PieceCouleurOpp,  ArrOccup_PiecesCoulOpp,  ArrOccupEtPiecesCoulOpp,  ArrVideOu_ArrOccupEtPiecesCoulOpp;
    public int pIndexDep;
    public static List<Coups> pListeCoups;
    //static//
    public static Piece pPieceDep;
    public static Piece[] PIECES;
    public static Couleur _couleur;
    public static boolean prise_en_passant;
    public static int pIndexArr;
    public static int pDist;
    public static int pIndexDir;
    public static boolean _examineEchecs;
    public static List<Coups> pListeCoupsPart;

    public Etat() {
    }

    public Etat(Couleur trait, Position position) {
        _couleur = trait;
        PIECES = position.getPieces();
        pListeCoups = new ArrayList<Coups>();
    }
}
